Telegram Group Search
This media is not supported in your browser
VIEW IN TELEGRAM
Кольцо прогресса в SwiftUI

Это краткое руководство для создания пользовательского индикатора прогресса в приложениях на SwiftUI

🔜 Используются переменные состояния, такие как @State var degrees: Double и @State var progress: CGFloat, для управления анимацией и отображением прогресса.

🔜 Кольцо создается с использованием Circle() и методов stroke для настройки толщины и цвета.

🔜 Добавляется градиент с помощью LinearGradient, чтобы визуально улучшить кольцо прогресса.

🔜Реализуются анимации, делающие индикатор более плавным и динамичным.
Please open Telegram to view this post
VIEW IN TELEGRAM
Рынок мобильных приложений в России 2024

По данным Apptica, в этом году (с 1 декабря 2023 по 30 ноября 2024) в России было совершено 11.63 миллиарда установок — это немногим больше (10.87), чем в 2023. Россия находится на 4 месте в мире по установка, между США и Индонезией. На первом месте Индия, на втором Бразилия.

За год пользователи потратили 846.39 миллиона долларов, что тоже больше прошлогодних 773.13 млн. Россия остается на 20 месте по доходам в мире, между Египтом и Южной Африкой.

Топ приложений по загрузкам по данным AppMagic — на первом месте Телеграм, который прибавил более 3 миллионов установок:

1. Telegram
2. VPN — fast proxy + secure
3. Wildberries
4. TikTok
5. OZON: товары, одежда, билеты
6. Free VPN Proxy by Planet VPN
7. VK Video: movies, cartoons, TV
8. WhatsApp Messenger
9. VPN Proxy Speed — Super VPN
10. Block Blast


Топ приложений по доходам — ВКонтакте уступил Телеграм, который увеличил свою прибыль почти на 8 миллионов:

1. Telegram
2. PUBG MOBILE
3. Royal Match
4. VK: social network, messenger
5. Roblox
6. Gardenscapes
7. Homescapes
8. Tanks Blitz PVP битвы
9. FaceApp: Perfect Face Editor
10. Litres: Books and audiobooks
UIGestureRecognizerRepresentable в SwiftUI

SwiftUI предоставляет протоколы UIViewRepresentable и UIViewControllerRepresentable с момента своего появления. Как вы, возможно, знаете, мы можем использовать их для обертывания любого представления или контроллера UIKit и размещения его в иерархии SwiftUI.

UIGestureRecognizerRepresentable работает аналогично другим протоколам представления и позволяет нам обернуть любой экземпляр типа UIGestureRecognizer, чтобы использовать его в представлениях SwiftUI.

Примеры кода в статье.
🔥 Наши друзья, запускают уже 14-й поток марафона по мобильной разработке на Swift (UIKit & SwiftUI).

📆 Длительность: 3 месяца

На марафоне ты сможешь учиться и работать в команде, решая задачи, максимально приближенные к реальным.

Что тебя ждет:

Еженедельные спринты, где ты будешь учиться новому и сразу применять это на практике.

👥 Командные проекты, как на настоящей работе — это опыт, который оценит любой работодатель.

💼 Портфолио из 10+ приложений — уже через три месяца у тебя будет что показать на собеседовании.

💬 Закрытый Telegram-канал, где можно общаться как с новичками которые только вкатываются в IT, так и с действующими разработчиками разного уровня.

🏆 Система мотивации с призами — выполняй задания в срок, участвуй в челленджах и попадай в таблицу лидеров.

🎙 Еженедельные доклады по темам тех. собеседований — каждую неделю разбираем самые популярные вопросы которые задают на собеседованиях.

📚 Доступ к базе знаний и 1ТБ материалов — здесь собраны все топовые ресурсы для прокачки навыков.

И, конечно, крутые менторы, которые всегда готовы помочь и направить! 💪

Не упусти шанс — следующий поток только через три месяца!

Успевай 👉подать заявку👈 и начни создавать свою карьеру уже сегодня!


📔 Отзывы о нас
Please open Telegram to view this post
VIEW IN TELEGRAM
Малоизвестные представления SwiftUI

Когда вы начали изучать swiftUI, вы могли столкнуться с большим количеством представлений, таких как: VStack, HStack, ZStack, ScrollView, Grid и прочее.

В данной статье показывают некоторые представления, которые в целом редко используются (если вы глубоко погружены в SwiftUI, то, возможно, уже знаете их), а именно:

- AnyLayout
- ViewThatFits
- ContentUnavailableView
SwiftUI: алхимия приложений — превращаем идеи в реальность

В докладе рассказываем, как SwiftUI трансформирует процесс разработки, упрощая создание привлекательных и интерактивных интерфейсов с минимальными усилиями.

Арман Мырзакануров поделится опытом решения уникальных задач, таких как оптимизация обновления элементов списка, управление состоянием и создание анимаций, которые ранее требовали сложных манипуляций в UIKit.

Особое внимание уделяет сочетанию SwiftUI и UIKit для достижения наилучших результатов в разработке кроссплатформенных приложений.
Смешивание цветов в SwiftUI

В последней версии SwiftUI компания Apple представила новую функцию под названием «смешивание цветов». Это единая функция, которая позволяет выполнять различные творческие задачи. В этой статье рассматривают смешивание цветов в SwiftUI и изучают его потенциальное применение.
Темы в современных iOS-приложениях с UITraitCollection

Совсем недавно (с iOS 17) Apple представила довольно удобный способ обработки смены тем в приложениях для iOS. Раньше это было довольно мучительно.

С появлением UITraitAppearance все стало проще.

Эта статья представляет собой законченное описание того, как добавить тематическое оформление в реальное приложение. Тут так же есть ссылки на реальный проект, который вы можете скачать.
DeepSeek

Главная тема для
разговоров в западном интернете прямо сейчас — DeepSeek. Это китайский чат-бот, который делает то же самое, что ChatGPT, но в разы быстрее и дешевле

Для россиян DeepSeek сильно удобнее, чем ChatGPT. Чат-бот не требует ни VPN, ни зарубежного номера, ни подписки. Вы прямо сейчас можете зайти на их сайт, зарегистрироваться и начать задавать вопросы.

Пробуем👌
Аналитика пользователей iOS 18 охватила 68% всех iPhone

В пятницу компания Apple опубликовала новые данные, свидетельствующие о популярности iOS 18. Выпущенная в сентябре 2024 года, мобильная операционная система сейчас установлена на 68% совместимых устройств. Это число увеличивается до 78% на iPhone, выпущенных за последние четыре года.

Что касается остальных iPhone, то 19% из них работают под управлением iOS 17, а 13% используют более раннюю версию. Аналогично, 19% iPhone, выпущенных за последние четыре года, в настоящее время работают под управлением iOS 17.

С более ранними версиями iOS этот показатель снижается до 5% — это вполне объяснимо, учитывая общий процент устройств, которые поставлялись с iOS 17 или 18, а также склонность ранних пользователей поддерживать свои устройства на последних обновлениях ОС. В целом, представленные цифры похожи на те, что Apple опубликовала в 2024 году по поводу внедрения iOS 17.
💡 SwiftUI Совет

Автозаполнение кодов подтверждения — одна из лучших функций в iOS.

Чтобы явно включить её для текстового поля, просто используйте:
.textContentType(.oneTimeCode)
Forwarded from Мобильный кот (Vasiliy Usov)
👑 SwiftGPT: Библиотека для работы с ChatGPT

Выложил на GitHub первую версию библиотеки SwiftGPT. Она предназначена для интеграции возможностей ChatGPT в iOS/macOS/Linux проекты.

⭐️ Особенности

- Совместимость с официальным OpenAI API: интерфейс основан на стилях OpenAI.
- Поддержка Swift 6 и Swift Concurrency.
- Мультиплатформенность: работает на всех платформах Apple (iOS, macOS, watchOS, tvOS) и даже на Linux.

⬆️ Основные функции

- Поддержка Chat Completions (генерация текста)
- В планах: Assistants API, Text-to-Speech, Text Transcriptions, Image generation и др.
- Возможность указать URL для запросов (актуально для РФ, когда делаешь свой прокси)

Почему я занялся SwiftGPT

Я давно интересуюсь искусственным интеллектом и активно применяю его решения в своих проектах. Для одной из задач мне потребовался API ChatGPT, но я обнаружил, что официального SDK для iOS не существует. Сначала я задумался о создании собственной библиотеки, но обратил внимание на пакет ChatGPTSwift.

У данной библиотеки есть сильная сторона — использование OpenAPI 3.0 спецификации для сетевого слоя. То есть разработчик взял официальную спецификацию и использую
пакет от Apple Swift OpenAPI Generator сгенерировал сетевой слой.

На мой взгляд, это супер эффективное решение, которое позволяет упростить интеграцию с любым бекендом.

Однако, реализация ChatGPTSwift имела ряд проблем, которые требовали исправлений.

🤕 Проблемы ChatGPTSwift и их решения

- Единый монолитный класс: библиотека объединяла все функции в одном классе, что снижало читаемость и масштабируемость. Я переработал архитектуру, распределив функции в соответствии с официальным ChatGPT API.
- Неудобное API: оригинальное API библиотеки отличалось от OpenAI API. Теперь интерфейс полностью соответствует официальной документации, что минимизирует порог вхождения.
- Ошибки Swift Concurrency: вместо необоснованных решений вроде @unchecked Sendable, я внедрил корректную поддержку Swift Concurrency.
- Сложные названия типов и свойств: автогенерированные имена вроде text_event_hyphen_stream заменены на более понятные и привычные — например, textEventStream.
- Баги и устаревший API: обновил сетевой слой до актуальной версии API и устранил ошибки в логике.
- Архаичная обработка контекста токенов: библиотека обрезала контекст до 4000 токенов, хотя ChatGPT последней версии поддерживает 128 000. Это ограничение устранено.

💊 Что дальше

Переработка библиотеки — это лишь начало работы. Сейчас SwiftGPT поддерживает основные функции, но я продолжаю тестировать её в реальных проектах, а также развивать поддержку новых и существующих API OpenAI.

# Пример использования

Все максимально просто

import SwiftGPT

// Установка API key
OpenAI.Configuration.apiKey = .apiKey("your-api-key")

Task {
// создание сессии
let chat = OpenAI.Chat()
// запрос
let response = try await chat.completions(prompt: "Как погода сегодня?")
print("Ответ: \(response)")
}

Если вам нужно интегрировать ChatGPT в iOS/macOS/Linux приложение, уже сейчас вы можете использовать SwiftGPT.

Забрать/посмотреть можно тут.

Теперь эта библиотека открыта для обратной связи и предложений сообщества!
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Ваши вопросы к выпуску про увольнения

Планируем выпуск про увольнения в IT. Если у вас есть интересные вопросы и хотите, чтобы его разобрали — пишите в комментарии.
💡 SwiftUI

Легко создавайте светящуюся градиентную рамку в SwiftUI, используя модификаторы stroke() и shadow().
Потоки под капотом: как работают многопоточность и синхронизация

В решении рабочих задач и прохождении собеседований часто затрагиваются вопросы, связанные с многопоточностью и самими потоками, а также с необходимостью их синхронизации. Однако что происходит за кулисами этих процессов? Как функционирует механизм потоков изнутри?

В данной статье мы рассмотрим детали этой темы, а именно:

1. Проанализируем работу потоков;
2. Выявим скрытые механизмы, обеспечивающие их функционирование;
3. Определим, какую пользу практикующим iOS‑разработчикам приносит понимание внутреннего устройства потоков.
coming soon
💡 Совет по SwiftUI

Легко настройте минимальную высоту для всех строк в List
This media is not supported in your browser
VIEW IN TELEGRAM
SwiftUI скрытие TabBar

В этом видео создадите прокручиваемый интерфейс с таб-баром, который плавно скрывается и появляется при прокрутке — это выглядит стильно, аккуратно и очень функционально
2025/06/16 14:10:04
Back to Top
HTML Embed Code: